<?php
namespace app\index\controll;

use \think\Controller as Controller;
use \think\Request;
final class Wechar extends Controller{
    //应用唯一标识
    protected $appid = '';

    
    protected $appsecret = '';

    public function index(){
        
    }
    public function getWe(Request $req){
        $code = $req->get('code');
        $state = $req->get('state');
        //换成自己的接口信息
        $appid = 'XXXXX';
        $appsecret = 'XXXXX';
        if (empty($code)) $this->error('授权失败');
        $token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.'&secret='.$appsecret.'&code='.$code.'&grant_type=authorization_code';
        $token = json_decode(file_get_contents($token_url));
        if (isset($token->errcode)) {
            echo '<h1>错误：</h1>'.$token->errcode;
            echo '<br/><h2>错误信息：</h2>'.$token->errmsg;
            exit;
        }
        $access_token_url = 'https://api.weixin.qq.com/sns/oauth2/refresh_token?appid='.$appid.'&grant_type=refresh_token&refresh_token='.$token->refresh_token;
        //转成对象
        $access_token = json_decode(file_get_contents($access_token_url));
        if (isset($access_token->errcode)) {
            echo '<h1>错误：</h1>'.$access_token->errcode;
            echo '<br/><h2>错误信息：</h2>'.$access_token->errmsg;
            exit;
        }
        $user_info_url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$access_token->access_token.'&openid='.$access_token->openid.'&lang=zh_CN';
        //转成对象
        $user_info = json_decode(file_get_contents($user_info_url));
        if (isset($user_info->errcode)) {
            echo '<h1>错误：</h1>'.$user_info->errcode;
            echo '<br/><h2>错误信息：</h2>'.$user_info->errmsg;
            exit;
        }

        $rs =  json_decode(json_encode($user_info),true);//返回的json数组转换成array数组

        //打印用户信息
        echo '<pre>';
        print_r($rs);
        echo '</pre>';
    }
}
